package com.telchina.workorder.third.service;

import com.telchina.common.core.domain.entity.SysOrg;
import com.telchina.common.core.domain.entity.SysUser;

import java.util.List;


/**
 * 第三方接口获取统一认证数据
 *
 * @author jason
 * @author telchina
 */
public interface SystemThirdService {

    /**
     * 通过id获取用户信息
     * @param userId
     * @return
     */
    SysUser getSysUserInfo(String userId);
    /**
     *
     * @param userIds
     * @return
     */
    List<SysUser> getSysUserInfoList(List<String> userIds);

    /**
     * 获取登录人所在的部门id
     */
    String getLoginUseDeptId();

    /**
     * 通过用户id获取用户部门
     */
    SysOrg getLoginUseDeptByUserId(String userId);

    /**
     * 获取指定部门下所有用户
     */
    List<SysUser> getSysUserByDeptId(String DeptId);

    /**
     * 获取部门信息列表
     * @param deptIds
     * @return
     */
    List<SysOrg> getDeptIdInfoList(List<String> deptIds);

    /**
     * 根据角色获取用户
     * @param roleId
     * @return
     */
    List<SysUser> getSysUserByRoleId(String roleId);

    /**
     * 根据传入的部门id 获取部门下所有子部门 + 传入部门的部门id
     */
    List<String> getDeptIdByParentId(String deptId);

    /**
     * 获取全部部门信息
     */
    List<SysOrg> getAllSysOrg();
}
